library(tidyverse)
library(PRISMAstatement)
Global urbanization continues unabated, with more than 50% of the worlds’ population living in cities. Cities are conventionally viewed as a threat to local biodiversity because natural habitat is replaced with development. However, more recently, there is greater acknowledgement from the public and private sectors that supporting local environments sustains critical ecosystem services, which in turn improves human health and biodiversity conservation. Consequently, urban planning and design has shifted towards green infrastructure (GI), such as green roofs and retention ponds, to increase connections between city and nature in an era of climate change. The contribution of GI to some ecosystem services has been proven (e.g. stormwater management, building cooling), but the contribution to biodiversity conservation remains unspecified. Using a systematic literature review, this project will (i) determine effect estimates that relate different GI types and characteristics to the impacts on natural systems, and (ii) compile relevant data to develop different implementation scenarios GI for Toronto and region. This study will inform natural system planning and improve quantification of GI on urban ecosystems. Findings from this research will have global ramifications that allow city planners to optimize GI implementation for sustainable development and decrease the impacts of cities on natural systems.
| date | task |
|---|---|
| June 18 | Begin meeting with staff and MacIvor lab to set out workplan |
| June 25 | Begin literature review and data extraction |
| July 2 | Aggregate available data for GI analysis in Toronto |
| July 3 | Complete meetings with TRCA staff on relevant considerations for the project |
| July 9 | Determine important parameters for modelling GI in Toronto |
| August 20 | Complete collection and review of relevant articles |
| September 3 | Conduct meta-analysis on available data |
| September 10 | Propose candidate models for quantifying GI effects for natural systems |
| Sept 24 | Model validation and begin writting manuscript |
| Oct 15 | Complete a draft of manuscript and finalize model |
A systematic literature search will be conducted using Web of Scienc for all articles between 1980 and 2018. This time frame was chosen because it captures the majority of the literature on green infrastructure and with articles that have some measured estimates. The review will include all studies globally. The intended purpose of this search is to capture all articles that have documented both green infrastructure implementation and a measure of natural systems. The search terms that will be used are:
*green infrastructure OR low*impact development OR Sustainable Drainage System* OR Water Sensitive Urban Design OR green*roof AND *diversity OR species OR ecosystem OR ecology OR habitat* OR co-benefit
These terms have returned 871 results (as of June 2018)
search1.1 <- read.csv("data/WOS-lit.csv")
search1.2 <- read.csv("data/WoSPart3-July_4_2018.csv")
net.difference <- anti_join(search1.2, search1.1, by = "DOI")
net.difference <- net.difference %>% select(Title, DOI) #to simplify for a look
nrow(net.difference) #count of number of differences from consecutive search
## [1] 182
## 182 papers to be added by including revised terms
## Select those articles and join with other dataset
net.difference <- anti_join(search1.2, search1.1, by = "DOI")
updated.search <- rbind(search1.1, net.difference)
#write.csv(updated.search, "data/WOS-lit.updated.csv")
Adding revised terms from July 3rd meeting added 182 papers Total articles returned = 1,053 (as of July 2018)
## Adding terms for naturalized pond and pollinator garden
search1.2 <- read.csv("data/WOS-lit.updated.csv")
search1.3 <- read.csv("data/WoSPart4-July_11_2018.csv")
net.difference <- anti_join(search1.3, search1.2, by = "DOI")
net.difference <- net.difference %>% select(Title, DOI) #to simplify for a look
nrow(net.difference) #count of number of differences from consecutive search
## [1] 0
## 213 papers to be added by including revised terms
## Select those articles and join with other dataset
net.difference <- anti_join(search1.3, search1.2, by = "DOI")
updated.search <- rbind(search1.2, net.difference)
#write.csv(updated.search, "data/WOS-lit.updated.csv")
Adding revised terms from July 3rd meeting added 213 papers Total articles returned = 1,224 (as of July 2018)
This steps includes a. checking for duplicating, b. reviewing each instance for relevancy, c. consistently identifying and documenting exclusion criteria. Outcomes include a list of publications to be used for synthesis, a library of pdfs, and a PRISMA report to ensure the worflow is transparent and reproducible. Papers were excluded with the following characteristics:
evidence <- read.csv("data/evidence.csv")
excludes <- evidence %>% group_by(reason) %>% count(exclude) %>% filter(reason!="")
ggplot(excludes, aes(x=reason, y=n)) + geom_bar(stat="identity") + coord_flip()
## Completed so far
prog <- sum(evidence$exclude!="")
prog
## [1] 1266
## Remaining
total <- nrow(evidence)
total
## [1] 1266
setTxtProgressBar(txtProgressBar(0,total, style = 3), prog)
##
|
| | 0%
|
|=================================================================| 100%
Initial pass for relevant papers complete.
GI.type <- evidence %>% group_by(GI.type) %>% count(exclude) %>% filter(GI.type!="")
ggplot(GI.type, aes(x=GI.type, y=n)) + geom_bar(stat="identity") + coord_flip()
Representations of relevant GI types found in papers
Prisma report
## total number of papers found
nrow(evidence)
## [1] 1266
## number of papers found outside of WoS
other <- read.csv("data/other.sources.csv")
nrow(other)
## [1] 27
## number of articles excluded
excludes <- evidence %>% filter(exclude=="y")
nrow(excludes)
## [1] 1123
## relevant papers
review <- evidence %>% filter(exclude!="y")
nrow(review)
## [1] 143
## papers for meta
meta <- evidence %>% filter(meta.=="yes")
nrow(meta)
## [1] 117
prisma(found = 1255,
found_other = 9,
no_dupes = 1264,
screened = 1264,
screen_exclusions = 1123,
full_text = 141,
full_text_exclusions = 0,
qualitative = 141,
quantitative = 115,
width = 800, height = 800)
## Loading required namespace: DiagrammeR
require(ggmap)
### Start with base map of world
mp <- NULL
mapWorld <- borders("world", colour="gray50", fill="gray50") # create a layer of borders
mp <- ggplot() + mapWorld
## colorblind-friendly palette
cbPalette <- c("#999999", "#E69F00", "#56B4E9", "#009E73", "#F0E442", "#0072B2", "#D55E00", "#CC79A7","#000000")
meta <- read.csv("data//evidence.csv")
meta <- subset(meta, GI.type!="")
## plot points on top
mp <- mp+ geom_point(data=meta , aes(x=lon, y=lat, color=GI.type), size=2) + scale_colour_manual(values=cbPalette)+
theme(legend.position="bottom", text = element_text(size=20))
mp
gf.data <- read.csv("data//GI.data//GreenRoofGeocoded.csv")
garden.data <- read.csv("data//GI.data//ComGardensdata.csv")
pond.data <- read.csv("data//GI.data//RetentionPondsGPS.csv")
## Extract coordinates only for GI
gf.data <- gf.data[,c("lon","lat")]
garden.data <- garden.data[,c("lon","lat")]
pond.data <- pond.data[,c("lon","lat")]
## combine into single dataset
GI.data <- rbind(gf.data,garden.data, pond.data)
## add column for data type
GI.data[,"GI.type"] <- c(rep("Green Roof",nrow(gf.data)),rep("Community Garden",nrow(garden.data)),rep("Retention Pond", nrow(pond.data)))
## interactive map
library(leaflet)
## Warning: package 'leaflet' was built under R version 3.4.4
m <- leaflet(data=GI.data) %>%
addTiles() %>%
addCircleMarkers(~lon, ~lat, color = ifelse(GI.data$GI.type == "Retention Pond", 'blue', 'red'), radius=5)
m
fauna <- read.csv("data//SurveyData//FaunaData.csv")
flora <- read.csv("data//SurveyData//FloraData.csv")
fauna <- fauna[,c("lon","lat")]
flora <- flora[,c("lon","lat")]
## combine into single dataset
species.occ <- rbind(fauna,flora)
## add column for data type
species.occ[,"type"] <- c(rep("fauna",nrow(fauna)),rep("flora",nrow(flora)))
m <- leaflet(data=species.occ) %>%
addTiles() %>%
addCircleMarkers(~lon, ~lat, color = ifelse(species.occ$type == "flora", 'green', 'red'), radius=2)
m